local M = {
    "ibhagwan/fzf-lua",
    dependencies = { "nvim-tree/nvim-web-devicons" },
    cmd = "FzfLua",
    keys = {
        {
            "<leader>lr",
            "<cmd>FzfLua lsp_references<cr>",
            desc = "引用",
        },
        {
            "<leader>sf",
            "<cmd>FzfLua files<cr>",
            desc = "search files",
        },
        {
            "?",
            "<cmd>FzfLua builtin<cr>",
            desc = "快捷键",
        },
        {
            "<leader>ss",
            "<cmd>FzfLua live_grep<cr>",
            desc = "grep search",
        },
        {
            "<leader>fr",
            "<cmd>FzfLua oldfiles<cr>",
            desc = "resume",
        },
        {
            "<leader>bs",
            "<cmd>FzfLua buffers<cr>",
            desc = "switch buffer",
        },
        {
            "<leader>fc",
            "<cmd>FzfLua commands<cr>",
            desc = "commands",
        },
        {
            "<leader>fh",
            "<cmd>FzfLua helptags<cr>",
            desc = "help_tags",
        },
        {
            "<leader>fz",
            "<cmd>FzfLua<cr>",
            desc = "telescope",
        },
        {
            "<leader>lpd",
            "<cmd>FzfLua lsp_document_symbols<cr>",
            desc = "lsp document",
        },
        {
            "<leader>lpo",
            "<cmd>FzfLua lsp_outgoing_calls<cr>",
            desc = "lsp picker outgoing_calls",
        },
        {
            "<leader>lpi",
            "<cmd>FzfLua lsp_incoming_calls<cr>",
            desc = "lsp picker incoming_calls",
        },
        {
            "<leader>ld",
            "<cmd>FzfLua diagnostics_workspace<cr>",
            desc = "lsp diagnostics_workspace",
        },
    },
    config = function()
        require("fzf-lua").setup {}
    end,
}

return M
